﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.ComponentModel;

namespace FinApp.ViewModels.Base {
    public abstract class ViewModelBase : INotifyPropertyChanged {

        #region Events
        public event PropertyChangedEventHandler PropertyChanged; 
        #endregion

        #region Methods
        /// <summary>
        /// Notifica el cambio de valor de una propiedad concreta
        /// </summary>
        /// <param name="propertyName"></param>
        protected void NotifyPropertyChanged(string propertyName) {
            PropertyChangedEventHandler handler = PropertyChanged;
            if (null != handler) {
                handler(this, new PropertyChangedEventArgs(propertyName));
            }
        }

        public abstract void LoadData();
        #endregion

    }
}
